Conventional devices that collect and process time sensitive information are typically configured with real-time operating systems. A real-time operating system may receive signals indicating that different instances of time sensitive input are available to process. Once available, the real-time operating system is configured to perform near instantaneous, priority-based tasks on each of the different instances of time sensitive input as they become available. The real-time operating system may prioritize the execution of tasks in accordance with an established schedule of tasks and/or interrupts that may reschedule an execution order of tasks.
In some scenarios however, a real-time operating system may be unable to perform a complete set of scheduled tasks on an instance of time sensitive input in a necessary time period. For example, a real-time operating system may be unable to complete the set of scheduled tasks on a first instance of time sensitive input, before the next instance of time sensitive input is received and available for processing. In these scenarios where the real-time operating system experiences processing latency and/or processing overload, the real-time operating system may miss an opportunity to execute the scheduled tasks on the next instance of time sensitive input. This may lead to a loss of time sensitive information that is critical to the functionality being performed by a device on which the real-time operating system is running. Furthermore, an operating system may also be unable to receive and/or process time sensitive information that is received during a time period when a device on which it is operating is booting up or rebooting.
Thus, existing operating systems are unable to reliably receive and process time sensitive information when the operating system is i) experiencing processing latency and/or processing overload, or ii) the operating system is in a boot up process or reboot process.